home *** CD-ROM | disk | FTP | other *** search
/ Nebula 2 / Nebula Two.iso / SourceCode / MiscKit1.7.1 / MiscKit / Palettes / MiscTableScroll / MiscTableView.h < prev    next >
Encoding:
C/C++ Source or Header  |  1996-02-11  |  2.7 KB  |  82 lines

  1. #ifndef __MiscTableView_h
  2. #define __MiscTableView_h
  3. //=============================================================================
  4. //
  5. //        Copyright (C) 1995 by Paul S. McCarthy and Eric Sunshine.
  6. //                Written by Paul S. McCarthy and Eric Sunshine.
  7. //                            All Rights Reserved.
  8. //
  9. //        This notice may not be removed from this source code.
  10. //
  11. //        This object is included in the MiscKit by permission from the authors
  12. //        and its use is governed by the MiscKit license, found in the file
  13. //        "License.rtf" in the MiscKit distribution.    Please refer to that file
  14. //        for a list of all applicable permissions and restrictions.
  15. //        
  16. //=============================================================================
  17. //-----------------------------------------------------------------------------
  18. // MiscTableView.h
  19. //
  20. //        General-purpose 2-D display object that works with the
  21. //        MiscTableScroll to provide row/column sizing and dragging.
  22. //
  23. //        This object is responsible for drawing, mouse and keyboard
  24. //        events in the content portion of the display.
  25. //
  26. //-----------------------------------------------------------------------------
  27. //-----------------------------------------------------------------------------
  28. // $Id: MiscTableView.h,v 1.1 95/09/27 12:21:21 zarnuk Exp $
  29. // $Log:        MiscTableView.h,v $
  30. //    Revision 1.1  95/09/27    12:21:21  zarnuk
  31. //    Initial revision
  32. //    
  33. //-----------------------------------------------------------------------------
  34. extern "Objective-C" {
  35. #import <appkit/View.h>
  36. #import <dpsclient/dpsNeXT.h>
  37. }
  38. #import <misckit/MiscTableTypes.h>
  39.  
  40. @class MiscMouseTracker, MiscTableFocus, MiscTableScroll, Cell;
  41. class MiscSparseSet;
  42. class MiscTableBorder;
  43.  
  44. @interface MiscTableView : View
  45.     {
  46.     MiscTableScroll*    scroll;
  47.     MiscTableBorder*    col_border;
  48.     MiscTableBorder*    row_border;
  49.     MiscBorderType        tracker_border;
  50.     MiscMouseTracker*    tracker;
  51.     MiscSparseSet*        oldColSel;
  52.     MiscSparseSet*        oldRowSel;
  53.     MiscTableFocus*        focuser;
  54.     }
  55.  
  56. - initFrame:(NXRect const*)frameRect
  57.         scroll:(MiscTableScroll*)i_scroll
  58.         colInfo:(MiscTableBorder*)i_col_border
  59.         rowInfo:(MiscTableBorder*)i_row_border;
  60. - (void) adjustSize;
  61.  
  62. - drawCellAt: (int)row : (int)col;                        // Physical coords
  63. - drawRow: (int)row;                                    // Physical coord
  64. - drawCol: (int)col;                                    // Physical coord
  65.  
  66. - (void) scrollCellToVisible: (int)row : (int) col;        // Physical coords
  67. - (void) scrollRowToVisible: (int)row;                    // Physical coord
  68. - (void) scrollColToVisible: (int)col;                    // Physical coord
  69.  
  70. - (void) setSelectionMode: (MiscSelectionMode)mode;
  71. - (void) reflectSelection;
  72. - (void) reflectCursor;
  73. - (void) trackBy: (MiscBorderType)b;
  74. - (MiscBorderType) trackingBy;
  75.  
  76. - mouseDown: (NXEvent*) event;
  77. - keyDown: (NXEvent*) event;
  78.  
  79. @end
  80.  
  81. #endif // __MiscTableView_h
  82.